home *** CD-ROM | disk | FTP | other *** search
/ 64'er / 64ER_CD.iso / sh1x / sh13a.d64 / quellcode messr. (.txt) < prev    next >
Commodore BASIC  |  1995-03-30  |  2KB  |  133 lines

  1. 100 SYS9*4096
  2. 110 .OPT P,OO
  3. 120 *= 52000
  4. 125 IRQVEC = $FFFE
  5. 130 NMIVEC = $FFFA
  6. 135 VIC = $D000
  7. 140 TA1LO = $DC04
  8. 150 TA1HI = $DC05
  9. 160 TB1LO = $DC06
  10. 170 TB1HI = $DC07
  11. 180 ICR1 = $DC0D
  12. 190 CRA1 = $DC0E
  13. 200 CRB1 = $DC0F
  14. 210 ;
  15. 220 TA2LO = $DD04
  16. 230 TA2HI = $DD05
  17. 240 TB2LO = $DD06
  18. 250 TB2HI = $DD07
  19. 260 ICR2 = $DD0D
  20. 270 CRA2 = $DD0E
  21. 280 CRB2 = $DD0F
  22. 290 VICSR1 = VIC+17
  23. 300 ;
  24. 310 BTA1LO = $02C0,BUFFERS AB 704
  25. 320 BTA1HI = BTA1LO+1
  26. 330 BTB1LO = BTA1LO+2
  27. 340 BTB1HI = BTA1LO+3
  28. 350 FULL = BTA1LO+4
  29. 360 ;
  30. 380 IRQBUF = $02D0;ZWISCHENSPEICHER
  31. 390 NMIBUF = IRQBUF+2
  32. 400 CPUBUF = IRQBUF+4
  33. 450 ;
  34. 500 START SEI
  35. 502 LDA $01
  36. 504 STA CPUBUF;ZUSTAND MERKEN
  37. 506 LDA #$35
  38. 508 STA $01;ROM AUS
  39. 510 LDA IRQVEC;IRQVEC MERKEN
  40. 520 STA IRQBUF
  41. 530 LDA IRQVEC+1
  42. 535 STA IRQBUF+1
  43. 540 STA IRQBUF+1
  44. 542 LDA NMIVEC;NMIVEC MERKEN
  45. 544 STA NMIBUF
  46. 546 LDA NMIVEC+1
  47. 548 STA NMIBUF+1
  48. 549 ;
  49. 550 LDA #<ABLESE;NEUER VEKTOR
  50. 560 STA IRQVEC
  51. 565 STA NMIVEC
  52. 570 LDA #>ABLESE
  53. 580 STA IRQVEC+1
  54. 585 STA NMIVEC+1
  55. 599 ;
  56. 600 STOP LDA #%10010000;SYSTEMTAKTE
  57. 610 STA CRA1
  58. 620 LDA #%11011000;UNTERLAEUFE ZAEHLEN
  59. 630 STA CRB1
  60. 640 LDA #%10111000;CNT-FLANKEN ZAEHLEN
  61. 650 STA CRA2
  62. 660 SET LDA BTA1LO;ALLE LADEN
  63. 670 STA TA1LO
  64. 680 LDA BTA1HI
  65. 690 STA TA1HI
  66. 700 LDA BTB1LO
  67. 710 STA TB1LO
  68. 720 LDA BTB1HI
  69. 730 STA TB1HI
  70. 740 LDA #$FF;DEFAULT
  71. 745 STA FULL
  72. 750 STA TA2LO
  73. 760 STA TA2HI
  74. 770 SETICR LDA #%01111111;LOESCHEN
  75. 780 STA ICR1
  76. 790 STA ICR2
  77. 800 LDA #%10000010;IRQ DURCH B-UNTERL.
  78. 810 STA ICR1
  79. 820 LDA #%11011001;UHR START B
  80. 825 STA CRB1
  81. 828 LDA #%10010001;UHR START
  82. 830 LDX #%10111001;COUNTER START
  83. 835 LDY #%10101000;STOP FUER SPAETER Y-REG BLEIBT BEI IRQ
  84. 840 CLI
  85. 850 STA CRA1;START UHR
  86. 860 STX CRA2;START COUNTER
  87. 880 TEST LDA TA2HI;UEBERLAUFTEST
  88. 890 BNE TEST
  89. 900 LDA TA2LO;LOBYTE
  90. 910 BNE TEST
  91. 950 SEI
  92. 960 LDA #$01
  93. 970 STA FULL;FLAG SETZEN
  94. 980 JMP NORMAL
  95. 999 ;
  96. 1010 ABLESE SEI;IRQ ROUTINE
  97. 1020 STY CRA2;COUNTER STOPPEN
  98. 1030 LDA TA2LO;ABSPEICHERN
  99. 1040 STA BTA1LO
  100. 1050 LDA TA2HI
  101. 1060 STA BTA1HI
  102. 1070 PLA
  103. 1075 ;PLA
  104. 1080 PLA
  105. 1085 ;PLA
  106. 1090 PLA
  107. 1095 ;PLA
  108. 1100 NORMAL LDA #%10010000;A STOP
  109. 1110 STA CRA1
  110. 1120 LDA #%11011000;B STOP
  111. 1130 STA CRB1
  112. 1150 LDA IRQBUF;VEKTOR HOLEN
  113. 1160 STA IRQVEC
  114. 1170 LDA IRQBUF+1
  115. 1180 STA IRQVEC+1
  116. 1182 LDA NMIBUF;VEKTOR HOLEN
  117. 1184 STA NMIVEC
  118. 1186 LDA NMIBUF+1
  119. 1188 STA NMIVEC+1
  120. 1190 LDA #$40
  121. 1200 STA TA1HI
  122. 1230 LDA #%01111111;LOESCHEN
  123. 1240 STA ICR1
  124. 1250 STA ICR2
  125. 1260 LDA #%10000001;IRQ DURCH A-UNTERL
  126. 1270 STA ICR1
  127. 1280 LDA #$01;TIMER A STARTEN
  128. 1290 STA CRA1
  129. 1300 LDA CPUBUF
  130. 1310 STA $01;ALTER ZUSTAND
  131. 1340 CLI
  132. 1350 RTS
  133.